# Maintainer: Jan Alexander Steffens (heftig) <heftig@archlinux.org>

pkgname=cbindgen
pkgver=0.20.0
pkgrel=1
pkgdesc="A tool for generating C bindings to Rust code"
url="https://github.com/eqrion/cbindgen"
arch=(x86_64)
license=(MPL2)
depends=(gcc-libs)
makedepends=(cargo git)
checkdepends=(cython)
_commit=41506d5aeb2be8d200f52d08afb0c243414eb00d  # tags/v0.20.0^0
source=("git+https://github.com/eqrion/cbindgen#commit=$_commit")
sha512sums=('SKIP')

pkgver() {
  cd $pkgname
  git describe --tags | sed 's/^v//;s/-/+/g'
}

prepare() {
  cd $pkgname
  cargo fetch --locked --target x86_64-unknown-linux-gnu
}

build() {
  cd $pkgname
  cargo build --release --frozen --all-targets
}

check() {
  cd $pkgname
  # Tests need nightly features
  RUSTC_BOOTSTRAP=1 cargo test --release --frozen
}

package() {
  cd $pkgname
  install -Dt "$pkgdir/usr/bin" target/release/cbindgen
  install -Dt "$pkgdir/usr/share/doc/$pkgname" -m644 README.md
}
